/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/

.monaco-workbench {
  font-size: 13px;
  line-height: 1.4em;
  position: relative;
  z-index: 1;
  /* overflow: hidden; Removed for allowing menus to overlay eg. preview */

  width: 100%;
  height: 100%;
}

.monaco-workbench > .part {
  position: absolute;
  box-sizing: border-box;
}

.monaco-workbench
  .part.editor
  > .content
  .editor-group-container
  > .title
  .tabs-container
  > .tab.sizing-fit {
  min-width: -moz-fit-content;
}

.monaco-font-aliasing-antialiased {
  -webkit-font-smoothing: antialiased;
}

.monaco-font-aliasing-none {
  -webkit-font-smoothing: none;
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .monaco-font-aliasing-auto {
    -webkit-font-smoothing: antialiased;
  }
}

/* Taken from shell.css */

/* .monaco-shell {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  font-size: 11px;
  user-select: none;
} */

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* .monaco-shell img {
  border: 0;
} */

.monaco-shell label {
  cursor: pointer;
}

.monaco-shell a {
  text-decoration: none;
}

.monaco-shell a:active {
  color: inherit;
  background-color: inherit;
}

.monaco-shell a.plain {
  color: inherit;
  text-decoration: none;
}

.monaco-shell a.plain:hover,
.monaco-shell a.plain.hover {
  color: inherit;
  text-decoration: none;
}

.monaco-shell input {
  /* color: inherit; */
  font-family: inherit;
  /* font-size: 100%; */
}

.monaco-shell select {
  font-family: inherit;
}

.monaco-shell .pointer {
  cursor: pointer;
}

.monaco-shell .context-view {
  -webkit-app-region: no-drag;
}

.monaco-shell .monaco-menu .monaco-action-bar.vertical {
  padding: 0.5em 0;
}

.monaco-shell .monaco-menu .monaco-action-bar.vertical .action-menu-item {
  height: 1.8em;
}

.monaco-shell
  .monaco-menu
  .monaco-action-bar.vertical
  .action-label:not(.separator),
.monaco-shell .monaco-menu .monaco-action-bar.vertical .keybinding {
  font-size: inherit;
  padding: 0 2em;
}

.monaco-shell .monaco-menu .monaco-action-bar.vertical .menu-item-check {
  font-size: inherit;
  width: 2em;
}

.monaco-shell .monaco-menu .monaco-action-bar.vertical .action-label.separator {
  font-size: inherit;
  padding: 0.2em 0 0 0;
  margin-bottom: 0.2em;
}

.monaco-shell .monaco-menu .monaco-action-bar.vertical .submenu-indicator {
  font-size: 60%;
  padding: 0 1.8em;
}

.monaco-shell
  .linux
  .monaco-menu
  .monaco-action-bar.vertical
  .submenu-indicator {
  height: 100%;
  -webkit-mask-size: 10px 10px;
  mask-size: 10px 10px;
}

.monaco-shell .monaco-menu .action-item {
  cursor: default;
}

/* START Keyboard Focus Indication Styles */

.monaco-shell [tabindex='0']:focus,
.monaco-shell .synthetic-focus,
.monaco-shell select:focus,
.monaco-shell input[type='button']:focus,
.monaco-shell input[type='text']:focus,
.monaco-shell textarea:focus,
.monaco-shell input[type='checkbox']:focus {
  outline-width: 1px;
  outline-style: solid;
  outline-offset: -1px;
  opacity: 1 !important;
}

.monaco-shell [tabindex='0']:active,
.monaco-shell select:active,
.monaco-shell input[type='button']:active,
.monaco-shell input[type='checkbox']:active,
.monaco-shell
  .monaco-tree
  .monaco-tree-row
  .monaco-shell
  .monaco-tree.focused.no-focused-item:active:before {
  outline: 0 !important; /* fixes some flashing outlines from showing up when clicking */
}

.monaco-shell .mac select:focus {
  border-color: transparent; /* outline is a square, but border has a radius, so we avoid this glitch when focused (https://github.com/Microsoft/vscode/issues/26045) */
}

.monaco-shell
  .monaco-tree.focused
  .monaco-tree-row.focused
  [tabindex='0']:focus {
  outline-width: 1px; /* higher contrast color for focusable elements in a row that shows focus feedback */
  outline-style: solid;
}

.monaco-shell .monaco-tree.focused.no-focused-item:focus:before,
.monaco-shell .monaco-list:not(.element-focused):focus:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5; /* make sure we are on top of the tree items */
  content: '';
  pointer-events: none; /* enable click through */
  outline: 1px solid; /* we still need to handle the empty tree or no focus item case */
  outline-width: 1px;
  outline-style: solid;
  outline-offset: -1px;
}

.monaco-shell .synthetic-focus :focus {
  outline: 0 !important; /* elements within widgets that draw synthetic-focus should never show focus */
}

.monaco-shell .monaco-inputbox.info.synthetic-focus,
.monaco-shell .monaco-inputbox.warning.synthetic-focus,
.monaco-shell .monaco-inputbox.error.synthetic-focus,
.monaco-shell .monaco-inputbox.info input[type='text']:focus,
.monaco-shell .monaco-inputbox.warning input[type='text']:focus,
.monaco-shell .monaco-inputbox.error input[type='text']:focus {
  outline: 0 !important; /* outline is not going well with decoration */
}

.monaco-shell .monaco-tree.focused:focus,
.monaco-shell .monaco-list:focus {
  outline: 0 !important; /* tree indicates focus not via outline but through the focused item */
}

/* CodeSandbox Change */
.context-view.monaco-menu-container {
  font-size: 0.75rem;
}

/* Fixes https://github.com/codesandbox/codesandbox-client/issues/3882 */
.monaco-editor .parameter-hints-widget {
  overflow-y: scroll;
}
